package com.wenjing.xiaoyun.chat.config;

import dev.langchain4j.data.segment.TextSegment;
import dev.langchain4j.model.embedding.EmbeddingModel;
import dev.langchain4j.store.embedding.EmbeddingStore;
import dev.langchain4j.store.embedding.pinecone.PineconeEmbeddingStore;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import static dev.langchain4j.store.embedding.pinecone.PineconeServerlessIndexConfig.builder;

/**
 * @author jiangshizhang
 * @version 1.0
 * @description: 向量数据存储 后续扩展知识库
 * @date 2025/5/26 15:55
 */
@Configuration
public class EmbeddingStoreConfig {
    private final EmbeddingModel embeddingModel;

    public EmbeddingStoreConfig(EmbeddingModel embeddingModel) {
        this.embeddingModel = embeddingModel;
    }

    //@Bean
    //public EmbeddingStore<TextSegment> embeddingStore() {
    //    String apiKey = System.getenv("PINECONE_API_KEY");
    //    // 创建向量存储
    //    return PineconeEmbeddingStore.builder()
    //            .apiKey(apiKey)
    //            .index("xiaoyun-ai-index")//如果指定的索引不存在，将创建一个新的索引
    //            .nameSpace("xiaoyun-ai-namespace") //如果指定的名称空间不存在，将创建一个新的名称
    //            .createIndex(builder()
    //                    .cloud("AWS") //指定索引部署在 AWS 云服务上。
    //                    .region("us-east-1") //指定索引所在的 AWS 区域为 us-east-1。
    //                    .dimension(embeddingModel.dimension()) //指定索引的向量维度，该维度
    //                    .build())
    //            .build();
    //}
}